package utils.filemanager
{
	import utils.log.LOGGER;

	public class MyFileMonitor
	{
		import com.adobe.air.filesystem.FileMonitor;
		import com.adobe.air.filesystem.events.FileMonitorEvent;
		
		import flash.events.Event;
		import flash.filesystem.File;
		
		public var monitor:FileMonitor;

		public function MyFileMonitor(fileChangeListener:Function, filePath:String = "C:\\incoming.xml"){
			var file:File = new File(filePath);
			if (!file.exists){
				LOGGER.log( "File: "+filePath+" existiert nicht. FileMonitor für CREATE Event gestartet");
			}
			
			if(!monitor)
			{
				monitor = new FileMonitor();
				monitor.addEventListener(FileMonitorEvent.CHANGE, fileChangeListener);
				monitor.addEventListener(FileMonitorEvent.CREATE, fileChangeListener);
				monitor.addEventListener(FileMonitorEvent.CREATE, fileChanged);
				monitor.addEventListener(FileMonitorEvent.CHANGE, fileChanged);
			}else{
				
				LOGGER.log("FileMonitor existiert bereits");
				return;
			}
			
			monitor.file = file;
			monitor.watch();
			LOGGER.log("FileMonitor wurde erfolgreich für die Datei: "+filePath+" gestartet");
			return;
		}
		
		private function fileChanged(e:FileMonitorEvent):void{
			
		}
		
		
	}
}